package dominio;

import java.sql.SQLException;
import java.util.List;

import persistencia.AgenteBD;
import utils.*;

public abstract class Controller {

	/**
	 * Obtiene el usuario asociado a la combinación login/pass
	 * 
	 * @param login
	 * @param password
	 * @return
	 * @throws SQLException
	 */
	public static Usuario login(String login, String password)
			throws SQLException {
		return AgenteBD.getInstance().login(login, password);
	}

	/**
	 * Crea un nuevo usuario
	 * 
	 * @param realName
	 * @param login
	 * @param password
	 * @throws SQLException
	 */
	public static void createNewUser(String realName, String login,
			String password, boolean admin) throws SQLException {
		AgenteBD.getInstance().createUser(login, password, realName, admin);
	}

	/**
	 * Obtiene todos los usuarios de la base de datos
	 * 
	 * @return Lista de usuarios
	 * @throws SQLException
	 */
	public static List<Usuario> getAllUsers() throws SQLException {
		return AgenteBD.getInstance().getAllUsers();
	}

	/**
	 * Elimina un usuario del sistema
	 * 
	 * @param login
	 * @throws SQLException
	 */
	public static void deleteUser(String login) throws SQLException {
		AgenteBD.getInstance().deleteUser(login);
	}

}
